package com.dhcc.DRGsHosp.web.controller;

import org.openkoala.koala.commons.InvokeResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import com.dhcc.DRGsHosp.facade.DisGroupAnalysisFacade;
import com.dhcc.DRGsHosp.facade.dto.DrgsAnalysisDTO;

/**
 * 
 * @title		:DisGroupAnalysisController.java
 * @description	:病组结构分析 直接通过原始数据计算
 * @author		:mazhaoyan
 * @date		:2015年12月12日
 * @version     :1.0
 * @copyright   :DHCC 2013-2014
 */
@Controller("drgsHospWebController11")
@RequestMapping("/DisGroupAnalysis")
public class DisGroupAnalysisController {

	@Autowired
	private DisGroupAnalysisFacade disGroupAnalysisFacade;
	
	/**
	 * 
	 * @methodname    :twoYearsCompare
	 * @description   : 两年比较
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2015年12月12日
	 */
	@ResponseBody
	@RequestMapping(value = "/twoYearsCompare", method = RequestMethod.POST)
	public InvokeResult twoYearsCompare(DrgsAnalysisDTO dto) {
		return disGroupAnalysisFacade.twoYearsCompare(dto);
	}
	/**
	 * 
	 * @methodname    :drgsStructure
	 * @description   : 病组结构分析
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2015年12月14日
	 */
	@ResponseBody
	@RequestMapping(value = "/drgsStructure", method = RequestMethod.POST)
	public InvokeResult drgsStructure(DrgsAnalysisDTO dto) {
		return disGroupAnalysisFacade.drgsStructure(dto);
	}
	
	/**
	 * 
	 * @methodname    :drgsDetail
	 * @description   : DRGs病组详情
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2015年12月14日
	 */
	@ResponseBody
	@RequestMapping(value = "/drgsDetail", method = RequestMethod.POST)
	public InvokeResult drgsDetail(DrgsAnalysisDTO dto) {
		return disGroupAnalysisFacade.drgsDetail(dto);
	}
	
	/**
	 * 
	 * @methodname    :overproofDrgsDetail
	 * @description   : 费用超标DRGs病组详情
	 * @param         :
	 * @author        :fulianxia
	 * @return        :
	 * @date          :2016年3月25日
	 */
	@ResponseBody
	@RequestMapping(value = "/overproofDrgsDetail", method = RequestMethod.POST)
	public InvokeResult overproofDrgsDetail(DrgsAnalysisDTO dto) {
		return disGroupAnalysisFacade.overproofDrgsDetail(dto);
	}
	
	/**
	 * 
	 * @methodname    :loadCase
	 * @description   : 病例数
	 * @param         :
	 * @author        :fulianxia
	 * @return        :
	 * @date          :2016年11月28日
	 */
	@ResponseBody
	@RequestMapping(value = "/loadCase", method = RequestMethod.POST)
	public InvokeResult loadCase(DrgsAnalysisDTO dto) {
		return disGroupAnalysisFacade.loadCase(dto);
	}
	
	/**
	 *  根据drgCode和年份查询主诊组信息
	 *  @Author QiaoYiLong
	 *  @param drgsAnalysis
	 *  @return 
	 *  @Date:2018年9月4日下午3:30:55
	 */
	@ResponseBody
	@RequestMapping(value = "/clinicGroupList", method = RequestMethod.POST)
	public InvokeResult clinicGroupList(DrgsAnalysisDTO dto) {
		return disGroupAnalysisFacade.getClinicGroupByDrgCode(dto);
	}
	
	/**
	 *  查询指定主诊组id的病例详情
	 *  @Author QiaoYiLong
	 *  @param drgsAnalysis (DrgsAnalysisDTO.drgCode必填，DrgsAnalysisDTO.monitorType存主诊组id)
	 *  @Date:2018年9月6日上午11:47:30
	 */
	@ResponseBody
	@RequestMapping(value = "/loadClinicCase", method = RequestMethod.POST)
	public InvokeResult loadClinicCase(DrgsAnalysisDTO dto) {
		return disGroupAnalysisFacade.loadClinicCase(dto);
	}
}
